home *** CD-ROM | disk | FTP | other *** search
- #! /usr/dt/bin/dtksh
- #
- # EventHandlerTest
- #
- # Copyright 2000, Silicon Graphics, Inc.
- # ALL RIGHTS RESERVED
- #
- # UNPUBLISHED -- Rights reserved under the copyright laws of the United
- # States. Use of a copyright notice is precautionary only and does not
- # imply publication or disclosure.
- #
- # U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
- # Use, duplication or disclosure by the Government is subject to restrictions
- # as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
- # in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
- # in similar or successor clauses in the FAR, or the DOD or NASA FAR
- # Supplement. Contractor/manufacturer is Silicon Graphics, Inc.,
- # 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
- #
- # THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
- # INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
- # DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
- # PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
- # GRAPHICS, INC.
- #
-
- ##########################################################################
- # (c) Copyright 1993, 1994 Hewlett-Packard Company
- # (c) Copyright 1993, 1994 International Business Machines Corp.
- # (c) Copyright 1993, 1994 Sun Microsystems, Inc.
- # (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
- # Novell, Inc.
- ##########################################################################
-
-
- #
- # This sample shell script demonstrates how event handlers can be added
- # and removed. It also demonstrates how the EH_WIDGET and EH_EVENT
- # convenience environment variables can be referenced.
- #
-
-
- EventHandler1()
- {
- echo "EH_WIDGET ="$EH_WIDGET
- echo "EH_EVENT ="$EH_EVENT
- echo "EH_EVENT.TYPE ="${EH_EVENT.TYPE}
- echo "event handler 1 invoked ("$1")"
- }
-
- EventHandler2()
- {
- echo "EH_WIDGET ="$EH_WIDGET
- echo "EH_EVENT ="$EH_EVENT
- echo "EH_EVENT.TYPE ="${EH_EVENT.TYPE}
- echo "event handler 1 invoked ("$1")"
- }
-
- # PushbuttonCallback: Adds an event handler to the form widget
- AddMaskableEventHandler1()
- {
- XtAddEventHandler $FORM2 "Button2MotionMask" False \
- "EventHandler1 1"
- }
-
- # PushbuttonCallback: Adds an event handler to the form widget
- AddMaskableEventHandler2()
- {
- XtAddEventHandler $FORM2 "ButtonPressMask|ButtonReleaseMask" False \
- "EventHandler1 1"
- }
-
- # PushbuttonCallback: Adds an event handler to the form widget
- AddMaskableEventHandler3()
- {
- XtAddEventHandler $FORM2 "Button2MotionMask" False \
- "EventHandler1 2"
- }
-
- # PushbuttonCallback: Adds an event handler to the form widget
- AddNonmaskableEventHandler()
- {
- XtAddEventHandler $FORM2 "NoEventMask" True "EventHandler2 1"
- }
-
- # PushbuttonCallback: Adds an event handler to the form widget.
- # Should report a bad event mask.
- AddBadEventHandler()
- {
- XtAddEventHandler $FORM2 "fooMask" False "EventHandler2 1"
- }
-
- # PushbuttonCallback: Removes an event handler to the form widget
- RemoveEventHandler1()
- {
- XtRemoveEventHandler $FORM2 "Button2MotionMask" False \
- "EventHandler1 1"
- }
-
- # PushbuttonCallback: Removes an event handler to the form widget
- RemoveEventHandler2()
- {
- XtRemoveEventHandler $FORM2 "ButtonPressMask|ButtonReleaseMask" False \
- "EventHandler1 1"
- }
-
- # PushbuttonCallback: Removes an event handler to the form widget
- RemoveEventHandler1and2()
- {
- XtRemoveEventHandler $FORM2 "XtAllEvents" True "EventHandler1 1"
- }
-
-
-
- ######################### Create the Main UI #################################
-
- XtInitialize TOPLEVEL eventHandlerTest EventHandlerTest "$0" "$@"
-
- XtCreateManagedWidget FORM form XmForm $TOPLEVEL
-
- XtCreateManagedWidget FORM2 form2 XmForm $FORM \
- topAttachment:ATTACH_FORM \
- leftAttachment:ATTACH_FORM \
- rightAttachment:ATTACH_FORM
- XtSetValues $FORM2 height:150 width:150
-
- XtCreateManagedWidget SEP sep XmSeparator $FORM \
- topAttachment:ATTACH_WIDGET \
- topWidget:$FORM2 \
- leftAttachment:ATTACH_FORM \
- rightAttachment:ATTACH_FORM
-
- XtCreateManagedWidget PB1 pb XmPushButton $FORM \
- labelString:"Add Maskable Event Handler 1" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$SEP \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:10 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:40
- XtAddCallback $PB1 activateCallback AddMaskableEventHandler1
-
- XtCreateManagedWidget PB2 pb2 XmPushButton $FORM \
- labelString:"Add Maskable Event Handler 2" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$SEP \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:60 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:90
- XtAddCallback $PB2 activateCallback AddMaskableEventHandler2
-
- XtCreateManagedWidget PB3 pb3 XmPushButton $FORM \
- labelString:"Add Maskable Event Handler 3" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB2 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:10 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:40
- XtAddCallback $PB3 activateCallback AddMaskableEventHandler3
-
- XtCreateManagedWidget PB4 pb4 XmPushButton $FORM \
- labelString:"Add Maskable Event Handler 4" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB2 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:60 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:90
- XtAddCallback $PB4 activateCallback AddMaskableEventHandler4
- XtSetSensitive $PB4 False
-
- XtCreateManagedWidget PB5 pb5 XmPushButton $FORM \
- labelString:"Add non-maskable Event Handler" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB4 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:10 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:40
- XtAddCallback $PB5 activateCallback AddNonmaskableEventHandler
-
- XtCreateManagedWidget PB6 pb6 XmPushButton $FORM \
- labelString:"Add Bad Event Handler" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB4 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:60 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:90
- XtAddCallback $PB6 activateCallback AddBadEventHandler
-
- XtCreateManagedWidget PB7 pb7 XmPushButton $FORM \
- labelString:"Remove Maskable Event Handler 1" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB6 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:10 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:40
- XtAddCallback $PB7 activateCallback RemoveEventHandler1
-
- XtCreateManagedWidget PB8 pb8 XmPushButton $FORM \
- labelString:"Remove Maskable Event Handler 2" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB6 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:60 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:90
- XtAddCallback $PB8 activateCallback RemoveEventHandler2
-
- XtCreateManagedWidget PB9 pb9 XmPushButton $FORM \
- labelString:"Remove Maskable Event Handler 1 and 2" \
- topAttachment:ATTACH_WIDGET \
- topWidget:$PB8 \
- topOffset:10 \
- leftAttachment:ATTACH_POSITION \
- leftPosition:10 \
- rightAttachment:ATTACH_POSITION \
- rightPosition:40 \
- bottomAttachment:ATTACH_FORM \
- bottomOffset:10
- XtAddCallback $PB9 activateCallback RemoveEventHandler1and2
-
-
- XtRealizeWidget $TOPLEVEL
-
- XtMainLoop
-